add_package()

py_library(
  NAME
    abstract
  SRCS
    abstract.py
  DEPS
    .base
    .classes
    .containers
    .functions
    .internal
    .utils
)

py_library(
  NAME
    base
  SRCS
    base.py
  DEPS
    pytype.config
    pytype.load_pytd
    pytype.utils
    pytype.pytd.pytd
    pytype.rewrite.flow.flow
    pytype.types.types
)

py_test(
  NAME
    base_test
  SRCS
    base_test.py
  DEPS
    .base
    .classes
    pytype.rewrite.flow.flow
    pytype.rewrite.tests.test_utils
)

py_library(
  NAME
    classes
  SRCS
    classes.py
  DEPS
    .base
    .functions
    pytype.utils
    pytype.pytd.pytd
    pytype.types.types
)

py_test(
  NAME
    classes_test
  SRCS
    classes_test.py
  DEPS
    .classes
    .functions
    pytype.rewrite.tests.test_utils
)

py_library(
  NAME
    containers
  SRCS
    containers.py
  DEPS
    .base
    .internal
    .utils
)

py_test(
  NAME
    containers_test
  SRCS
    containers_test.py
  DEPS
    .base
    .containers
    pytype.rewrite.tests.test_utils
)

py_library(
  NAME
    functions
  SRCS
    functions.py
  DEPS
    .base
    .containers
    .internal
    .utils
    pytype.utils
    pytype.blocks.blocks
    pytype.pytd.pytd
)

py_test(
  NAME
    functions_test
  SRCS
    functions_test.py
  DEPS
    .classes
    .functions
    pytype.rewrite.tests.test_utils
)

py_library(
  NAME
    internal
  SRCS
    internal.py
  DEPS
    .base
)

py_test(
  NAME
    internal_test
  SRCS
    internal_test.py
  DEPS
    .internal
    pytype.rewrite.tests.test_utils
)

py_library(
  NAME
    utils
  SRCS
    utils.py
  DEPS
    .base
)

py_test(
  NAME
    utils_test
  SRCS
    utils_test.py
  DEPS
    .base
    .utils
    pytype.rewrite.tests.test_utils
)
